1. Field of the Invention
The present invention relates to an echo canceler, and more particularly to an apparatus and method for canceling an echo signal by using an adaptive filter.
2. Description of the Related Art
In a telecommunication system, an echo phenomenon is generally caused due to an impedance mismatch of hybrid circuits for a 4-wire-to-2-wire conversion. Referring to FIG. 1, a voice signal is transferred from a party A to a party B through hybrid circuits 12, some signal components may echo back to the party A due to an impedance mismatch of the hybrid circuits 12. Such an echo signal may be canceled by an echo canceler 14.
It can be understood that a relationship between the voice signal from the party A and the echo signal may be estimated by using an adaptive filter, since the voice signal and the echo signal have an input-output relationship with respect to the hybrid circuit 12. That is, if the adaptive filter receiving the voice signal from the party A is repeatedly trained such that the output signal thereof becomes identical to the echo signal, then the adaptive filter will have the same input-output relationship as that of the hybrid circuit 12. At the moment, the voice signal from the party A is filtered by the adaptive filter to estimate the echo signal, and the echo estimation signal is subtracted from the original echo signal, thereby canceling the echo signal.
A filter coefficient of the adaptive filter should be repeatedly updated to maintain the optimal status of the adaptive filter, at all times. However, if the adaptive filter is repeatedly updated even in a double-talk status in which the voice signals from the parties A and B are simultaneously received, the adaptive filter will diverge. To prevent the divergence of the adaptive filter, updating of the adaptive filter should be temporarily stopped. Further, to stop the updating, it is necessary to know whether the voice signal from the party B is received or not. For that purpose, the voice signal from the party A is compared with the echo signal. As the result of the comparison, if the echo signal is relatively larger than the voice signal from the party A, it is considered that the voice signal from the party B is now received. Alternately, it is continuously checked whether the adaptive filter diverges or not, to determine that the voice signal from the party B is received if the adaptive filter diverges in the interim.
Although the echo signal is canceled by using the above-stated echo canceler 14, a residual echo signal may be generated due to quantization noises of the voice signal and the noises from the party B. In order to lower a level of the residual echo signal, the echo canceled signal is applied to a non-linear processor 16 which unconditionally sets a level of the noise signal to zero by using a center clipping apparatus.
If double-talk is not accurately detected, the echo canceler 14 diverges. In that case, the party A may hear loud noises, which drastically degrades speech quality of the communication system. However, in case of using a level difference between the voice signal from the party A and the echo signal to detect double-talk, it is difficult to accurately detect double-talk, since the level difference between two echo signals is not high enough when the voice signal from the party B has a low level. Further, the system performance is dependent upon the level difference between the voice signal from the party A and the echo signal, which becomes a reference in detecting double-talk. In case the level difference is incorrectly evaluated, double-talk may not be detected. Moreover, since the level difference undergoes a change according to the features of the hybrid circuits, it is difficult to fixedly set the value to a particular value.
In using the convergence of the adaptive filter to detect double-talk, it is difficult to set a reference value for detecting double-talk, at which the adaptive filter converges. Further, the reference value undergoes a change according to the background or surroundings. Thus, if the reference value is fixed to a particular value, the system may not have a good performance.
If the non-linear processor 16 is employed by using the center clipping apparatus, the signals with the lower level are converted to zero values and transferred to the party A, which may create a discontinuity problem of the received signal. Further, since such a system detects double-talk depending upon the signal level, the voice signal with the lower level from the party B may not be successfully transferred to the party A.